package Date;

import java.util.Calendar;

/*抽象类
可以为某一特定时刻和一组日历字段之间的转换的方法
提供了一个类方法getInstance用于获取Calender对象，其日历字段已使用当前日期和时间初始化：
Calendar rightNow=Calendar.getinstance();
静态类
 */
/*
public abstract void add(int field, int amount)：根据日历的规则，将指定的时间量添加或减去给定的字段
public final void set (int year,int month,int date):设置当前日历的年月日
 */
public class CalendarDemo {
    public static void main(String[] args) {
        //获取对象
        Calendar c = Calendar.getInstance();//多态的形式得到对象
//        System.out.println(c);

        //public int get(int field) 根据给定的日历字段返回对应的值
       /* int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1;//月份从0计算使用时需加1
        int day = c.get(Calendar.DATE);
        //通过get方法传值获取了年月日的值
        System.out.println(year + "年" + month + "月" + day + "日");*/

        //public abstract void add(int field, int amount)：根据日历的规则，将指定的时间量添加或减去给定的字段
        //需求：三年前的今天
      /*  c.add(Calendar.YEAR,-3); //向前减了三年
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1;//月份从0计算使用时需加1
        int day = c.get(Calendar.DATE);
        //通过get方法传值获取了年月日的值
        System.out.println(year + "年" + month + "月" + day + "日");*/

        //需求：十年后的五天前
        c.add(Calendar.YEAR,-10);//向前减了十年
        c.add(Calendar.DATE,-5);//向前减了5天

      /*  int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1;//月份从0计算使用时需加1
        int day = c.get(Calendar.DATE);
        //通过get方法传值获取了年月日的值
        System.out.println(year + "年" + month + "月" + day + "日");*/

        //public final void set (int year,int month,int date):设置当前日历的年月日
        c.set(20223,3,12);
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH) + 1;//月份从0计算使用时需加1
        int day = c.get(Calendar.DATE);
        System.out.println(year + "年" + month + "月" + day + "日");

    }
}
